System and method for raid configuration

ABSTRACT

A method and system for storing and updating RAID configuration information in a storage site separate from both the RAID controller and RAID disk drives is disclosed. The configuration information in the storage sites are compared and the configuration of the RAID system is automatically without user intervention. The method may be used in any computer or information handling system.

TECHNICAL FIELD

[0001] This invention relates, in general, to information handlingsystems, and, more particularly, to an information handling system thatuses a RAID array.

BACKGROUND

[0002] As the value and use of information continues to increase,individuals and businesses seek additional ways to process and storeinformation. One option available to users is information handlingsystems. An information handling system generally processes, compiles,stores, and/or communicates information or data for business, personal,or other purposes thereby allowing users to take advantage of the valueof the information. Because technology and information handling needsand requirements vary between different users or applications,information handling systems may also vary regarding what information ishandled, how the information is handled, how much information isprocessed, stored, or communicated, and how quickly and efficiently theinformation may be processed, stored, or communicated. The variations ininformation handling systems allow for information handling systems tobe general or configured for a specific user or specific use such asfinancial transaction processing, airline reservations, enterprise datastorage, or global communications. In addition, information handlingsystems may include a variety of hardware and software components thatmay be configured to process, store, and communicate information and mayinclude one or more computer systems, data storage systems, andnetworking systems.

[0003] An information handling system may include a RAID system for datastorage. A RAID system may include a RAID controller and RAID diskdrives. The RAID volume information or configuration information may bemaintained in a storage site. For example, PERC 3 RAID cards store theconfiguration information on both the disk drives and on battery backedup NVRAM. Whenever a mismatch occurs between the disk array informationstored on the drives and the disk array information stored on theadapter—which may indicate either an adapter or drive replacement—theuser must manually enter the adapter's configuration utility during postand choose which configuration to keep. It is possible for the user tochoose incorrectly, corrupting the drive array. Moreover, some embeddedRAID on the motherboard (ROMB) implementations store the RAID array'sconfiguration information on the motherboard. If the RAID controllerfails, the board containing the failed controller is replaced. In thiscase, although the drive configuration did not change, the RAIDconfiguration is lost, and the user must re-create the mirror, selectone of the “already mirrored” drives and re-create the array. Dependingon the size of the hard-drives, this operation can take multiple hours.Therefore, providing an information handling system with the capabilityto automatically update the RAID configuration following replacement ofa RAID component would increase the efficiency of such a system.

SUMMARY

[0004] In accordance with the present disclosure, one implementation ofa method to update configuration information associated with a RAIDsystem includes identifying storage sites of configuration information,comparing the configuration information stored in the storage sites,configuring the RAID system. The RAID system may include a RAIDcontroller, one or more disk associated drives, and a storage site forconfiguration information. The configuration information may identify adata storage relationship among the one or more disk drives. At leastone of the storage sites for configuration information should bedistinct from both the RAID controller and the RAID disk drives.

[0005] In accordance with the present disclosure, one implementation ofan information handling system that automatically updates configurationinformation associated with a RAID system includes at least one memoryelement, a processing unit, and a RAID system. The RAID system includesa RAID controller, one or more associated disk drives, and a storagesite for configuration information. The configuration information mayidentify a data storage relationship among the one or more disk drives.At least one or more storage sites for configuration information shouldbe distinct from both the RAID controller and the RAID disk drives. Theinformation handling system may identify the one or more storage sitesof configuration information. The information handling system maycompare the configuration information stored at the one or more sitesand then configure the RAID system according to the configurationinformation.

[0006] One technical advantage of the disclosed method to automaticallyupdate the configuration information of a RAID system is that itminimizes the amount of user input when updating RAID configurationinformation. By minimizing user intervention, the user is less likely tointroduce error into the RAID system. Another technical advantage of thedisclosed method to automatically update the configuration informationof a RAID system is that it creates a more robust RAID system. Byincreasing the redundancy of configuration information, the system canautomatically determine whether a RAID component has failed.Additionally, the system is more likely to automatically determine thecorrect RAID configuration in the present of component failure.

[0007] Other technical advantages will be apparent to those of ordinaryskill in the art in view of the following specification, claims, anddrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0008] A more complete understanding of the present embodiments andadvantages thereof may be acquired by referring to the followingdescription taken in conjunction with the accompanying drawings, inwhich like reference numbers indicate like features, and wherein:

[0009]FIG. 1 is a diagram of a RAID system in which the configurationinformation is stored in the backplane of an information handlingsystem;

[0010]FIG. 2 is diagram of a RAID system in which the configurationinformation is stored in a disk drive separate from the RAID diskdrives;

[0011]FIG. 3 is diagram of a RAID system in which the configurationinformation is stored in the backplane of an information handling systemand the RAID controller is embedded on the system board of theinformation handling system;

[0012]FIG. 4 is a diagram of a RAID system in which the configurationinformation is stored in one system board of an information handingsystem, the RAID controller is embedded on another system board of theinformation handling system; and

[0013]FIG. 5 is a diagram of a RAID system in which the configurationinformation is stored in a disk drive separate from the RAID drives.

DETAILED DESCRIPTION

[0014] For purposes of this disclosure, an information handling systemmay include any instrumentality or aggregate of instrumentalitiesoperable to compute, classify, process, transmit, receive, retrieve,originate, switch, store, display, manifest, detect, record, reproduce,handle, or utilize any form of information, intelligence, or data forbusiness, scientific, control, or other purposes. For example, aninformation handling system may be a personal computer, a networkstorage device, or any other suitable device and may vary in size,shape, performance, functionality, and price. The information handlingsystem may include random access memory (RAM), one or more processingresources such as a central processing unit (CPU) or hardware orsoftware control logic, ROM, and/or other types of nonvolatile memory.Additional components of the information handling system may include oneor more disk drives, one or more network ports for communicating withexternal devices as well as various input and output (I/O) devices, suchas a keyboard, a mouse, and a video display. The information handlingsystem may also include one or more buses operable to transmitcommunications between the various hardware components.

[0015] An information handling system that includes a RAID array mayimplement the RAID array in a variety of forms. For example the RAIDsystem may be implemented in level 0, 1, 2, 3, 4, 5, 6, 7, 10, 53 or0+1. Furthermore, multiple disk drives may be associated with the RAIDsystem as shown in FIG. 1. Configuration information (or RAID volumeinformation) enables the RAID controller to identify the location ofdata stored on RAID disk 130 and redundancy of the data stored on thoseRAID disks.

[0016] RAID systems may be implemented either as RAID functionalityembedded on a system board of a computer or as a RAID adapter cardcoupled to a computer system board. Different RAID implementations,either embedded or using adapter cards, store the RAID array'sconfiguration information in different places. When a computer'scomponents fail and are replaced, it is possible for that RAID arrayconfiguration information to be lost.

[0017] One implementation of a method to update RAID configurationinformation following failure of RAID system component is shown inFIG. 1. FIG. 1 includes a RAID planar 100, a backplane 110 and RAIDdisks 130. A RAID controller is located on the RAID planar 100. Forexample, the RAID controller may be located on a board that is coupledto the system board of the information handling system. The RAIDcontroller may also be located on an input/output (I/O) board coupled tothe information handling system. Moreover, the RAID controller may belocated on the system board or motherboard of the information handlingsystem. Additionally, a RAID system may include an interface 105 betweenRAID planar 100 and backplane 110 and an interface 125 couplingbackplane 110 to RAID disk drives 130. Following replacement of a failedRAID planar, the configuration information of the new RAID planarcontroller must be updated. Otherwise the RAID controller which is partof the RAID planar 100 would not have information sufficient to discernthat disk drives 130 are part of the RAID disk system. Following theupdate of the configuration information, RAID disk drives 130 wouldlogically appear as a single disk drive to the RAID controller.

[0018] When a new RAID controller is connected to the RAID system, theRAID system will be polled to identify storage locations of RAIDconfiguration information. FIG. 1 shows one implementation in which RAIDconfiguration information is stored in the backplane 110. In oneimplementation the RAID system may prompt the user to accept or rejectthe configuration information found in storage location 120. In anotherimplementation the RAID system may automatically accept theconfiguration information found in storage location 120 and update theRAID controller accordingly.

[0019] In still another implementation the configuration information maybe stored in one of the RAID disk drives 130. In this implementation theRAID system will verify the configuration information stored in storagelocation 120 is equivalent to that stored in the RAID disk drive 130.Next the system may automatically update the RAID controller to containthe configuration information stored in storage location 120 and RAIDdisk 130. In this fashion the RAID system will automatically identifyand arbitrate the configuration information stored in the RAID systemsuch that the configuration information is updated to the RAIDcontroller without user intervention. Moreover the default configurationof the operable RAID controller may be different from the configurationof the failed RAID controller. Therefore, the configuration informationfound in storage location 120 as well as disk drive 130 may be differentfrom that stored in the operable RAID controller. Through this automaticarbitration system, the RAID system will identify multiple storagelocations of the configuration information, e.g., storage 120, diskdrive 130, and RAID planar 100. Thus, the RAID controller system mayconfigure the RAID drives and controller based on a comparison of theconfiguration information stored in multiple locations. For example,assuming that equivalent configuration information is stored in two ofthe three storage locations, then the RAID controller may be updated tocontain the equivalent configuration information. By providing a thirdstorage site for RAID configuration information, the RAID drives and theRAID controller may be automatically configured following replacement ofa failed controller or disk drive.

[0020] Besides the RAID controller, the RAID drives may fail and thusrequire replacement. By providing a storage location for configurationinformation that is separate from both the RAID controller and RAID diskdrives, configuration information can be automatically updated followingreplacement of a failed RAID controller or drive. For example, FIG. 1shows two locations for storage of the configuration information, thatbeing the backplane 110 and disk drive 130. When a failed controller isreplaced, the user need not be prompted to identify the particular RAIDconfiguration to be updated to the RAID controller. The RAID system canautomatically identify two of the three storage locations forconfiguration information and then configure the hard drive controllerbased on those two out of the three choices found in the RAID system. Inanother implementation, the method shown in FIG. 1 can be used whenreplacing failed RAID disk drives 130. For example, if the disk drivefails, then the configuration information may be found on both thebackplane and the RAID adapter controller. Likewise if the RAID adapter100 fails, the configuration information may be found on the backplane110 and the hard drive 130. Thus, the disclosed method provides anadditional storage location for the configuration information such thatif one of the components of the RAID system fails then at least twostorage locations for the proper configuration information existsfollowing replacement of the failed component. Based upon these twostorage locations, the configuration of the replaced components may beupdated to reflect the prior configuration of the RAID system.

[0021]FIG. 2 illustrates another implementation in which theconfiguration information is stored not on the backplane 110 but on adisk drive 140, which is separate from the RAID disk drive. Thisimplementation includes the RAID planar 100 that comprises the RAIDcontroller, and interface 105 which couples RAID controller to blackbackplane 110 and interfaces 125 which couple RAID disk drives 130 andstorage disk drives 140 to the backplane 110. Following replacement of afailed component, the system will identify the RAID configurationinformation stored at 140. Additionally, similar to the implementationshown in FIG. 1, the RAID system may automatically update theconfiguration information in the replaced component. Otherwise the RAIDsystem may prompt the user to choose the appropriate RAID configuration.In any event, the implementation shown in FIG. 2 includes a storagelocation for configuration information separate from that of the RAIDadapter as well as the RAID disk drive.

[0022] In still another implementation, the configuration informationmay be stored on the system board itself. The configuration informationmay be stored in, for example, non-volatile random access memory orNVRAM, ROM or read only memory, or CD-ROM. In this case, followingreplacement of a failed component of the RAID system, e.g., either theRAID adaptor or RAID disk drives, the configuration information will bepresent on the system board. Therefore, the RAID system can eitherarbitrate the updating of the configuration information or prompt theuser to choose appropriate configuration.

[0023]FIG. 3 illustrates an implementation in which the functionality ofthe RAID controller card is embedded in the system board 300. Thisconfiguration may be also known as RAID on the mother board (ROMB). FIG.3 illustrates a system board 300, the RAID controller 310, an interface305 that couples the system board to the backplane 320, and interface325 that couples the backplane to disk drive 340. In the implementationshown in FIG. 3, the configuration information is stored in storagelocation 330 on the backplane. Following replacement of a failed systemcomponent, the RAID system will, based upon the identified configurationinformation, either arbitrate the updating of the configurationinformation in the RAID controller 310 or will prompt the user forselection of the RAID configuration information. In any event minimaluser interaction is required. For example, if the system prompts theuser for identification of the correct RAID configuration information,the user need not determine or input new RAID information. Additionally,the system may merely ask the user if the user chooses to accept theconfiguration information found in storage location 330. Thereforeproviding a storage location for configuration information that isseparate from the components of the RAID system that may fail, thedisclosed method for updating RAID configuration information reduces theamount of user intervention when updating RAID configuration informationfollowing replacement of a failed component.

[0024] The RAID system shown in FIG. 4 illustrates still anotherimplementation. Here the storage location for the configurationinformation 330 is located on the system board. The system shown in FIG.4 includes a system board 300, a RAID controller 310, the functionalityof which may be embedded on a system board or may be included in anadditional system board. The system also includes storage location 330which may be embedded in the system board or included as a separate oradditional board within the system board itself. Interface 305 couplesthe system board 300 to the backplane 320. Interfaces 340 couples RAIDdrives 340 to the backplane. For example, a battery backed up NVRAM maybe placed on a board separate from that containing the RAID controller,such as on the system backplane. This NVRAM is used as a secondaryrepository for the RAID array's configuration. When a failure occurs,the RAID system would compare the information stored in the controller,the drives and the new NVRAM source of RAID array configuration andautomatically arbitrate to select the configuration to be updated to theRAID system. Thus, following replacement of a failed system componentthe disclosed method updates the configuration information of the RAIDsystem with minimal user intervention. In the implementation shown inFIG. 4, the third repository for storage and configuration informationmay be any board other than the board where the RAID controller islocated. Therefore the integrity of the storage information ismaintained following replacement of a failed system component.

[0025] In still another implementation shown in FIG. 5, configurationinformation for the RAID system may be stored in a disk drive 330. FIG.5 illustrates a system board 300 that includes a RAID controllerembedded on the system board or included as an additional system board310, interface 305 that couples the system board 300 to the backplane320. Additionally, interfaces 315 couple RAID disk drives 340 andstorage drive 330 to backplane 320. Storage drive 330 stores theconfiguration information. Following replacement of a failed RAIDcomponent, the method disclosed herein automatically updates the RAIDconfiguration information or updates the RAID configuration informationwith minimal user intervention.

[0026] One of the advantages of the disclosed methods for updating RAIDconfiguration information is a reduction of error with respect toconfiguring the RAID system following replacement of a failed component.As a user is provided more opportunity to configure the RAID system,error may be introduced into the system. By reducing the amount of userintervention, the error in configuring a RAID system following failedboard components will be reduced.

[0027] Although the present disclosure has been described in detail, itshould be understood that various changes, substitutions, andalterations can be made hereto without departing from the spirit and thescope of the invention as defined by the appended claims.

What is claimed is:
 1. A method for updating configuration informationassociated with a RAID system, the RAID system including a RAIDcontroller, one or more disk drives associated therewith, and a storagesite for configuration information, the configuration informationidentifying a data storage relationship among the one or more diskdrives, wherein at least one of the storage sites for configurationinformation is a site distinct from the RAID controller, wherein atleast one of the storage sites for configuration information is distinctfrom the one or more disk drives, wherein an input device is coupled tothe RAID system, the method comprising: identifying the one or morestorage sites of configuration information; comparing the configurationinformation stored in the one or more storage sites; configuring theRAID system if two or more sites contain equivalent configurationinformation; and prompting a user to input data in response to theconfiguration information if two or more sites do not contain equivalentconfiguration information.
 2. The method of 1 wherein at least one ofthe one or more storage sites is located on a backplane, the backplaneis coupled to the RAID system.
 3. The method of 1, wherein at least oneof the one or more storage sites is located on a system board, the RAIDcontroller is located on an adapter card, and the adapter card iscoupled to the system board.
 4. The method of 1, wherein at least one ofthe one or more storage sites is located on a first system board, theRAID controller is located on a second system board, the first systemboard is coupled to the second system board.
 5. The method of 1, whereinat least one of the one or more storage sites is a non-volatile storagesites.
 6. The method of 5, wherein the non-volatile memory storage siteis non-volatile random access memory (NVRAM), read only memory (ROM),CD-ROM, or a hard disk drive.
 7. The method of 1, wherein at least oneof the one or more storage sites is the RAID controller.
 8. The methodof 1, wherein at least one of the storage sites is associated with theRAID controller.
 9. The method of 1, wherein at least one of the one ormore storage sites is at least one or more of the RAID disk drives. 10.A method for updating configuration information associated with a RAIDsystem, the RAID system including a RAID controller, one or more diskdrives associated therewith, and a storage site for configurationinformation, the configuration information identifies a data storagerelationship among the one or more disk drives, wherein at least one ofthe storage sites for configuration information is a site distinct fromthe RAID controller, wherein at least one of the storage sites forconfiguration information is distinct from the one or more disk drives,wherein an input device is coupled to the RAID system, the methodcomprising: identifying the one or more sites of configurationinformation; comparing the configuration information stored in the oneor more storage sites; configuring the RAID system if all sites containequivalent configuration information; and prompting a user to input datain response to the configuration information if all sites do not containequivalent configuration information.
 11. The method of 10 wherein atleast one of the one or more storage sites is located on a backplane,the backplane is coupled to the RAID system.
 12. The method of 10,wherein at least one of the one or more storage sites is located on asystem board, the RAID controller is located on an adapter card, and theadapter card is coupled to the system board.
 13. The method of 10,wherein at least one of the one or more storage sites is located on afirst system board, the RAID controller is located on a second systemboard, the first system board is coupled to the second system board. 14.The method of 10, wherein at least one of the one or more storage sitesis a non-volatile storage sites.
 15. The method of 14, wherein thenon-volatile memory storage site is non-volatile random access memory(NVRAM), read only memory (ROM), CD-ROM, or a hard disk drive.
 16. Themethod of 10, wherein at least one of the one or more storage sites isthe RAID controller.
 17. The method of 10, wherein at least one of thestorage sites is associated with the RAID controller.
 18. The method of10, wherein at least one of the one or more storage sites is at leastone or more of the RAID disk drives.
 19. An information handling system,the information handling system comprising: at least one memory; aprocessing unit; a RAID system including a RAID controller, one or moredisk drives associated therewith, a storage site for configurationinformation; wherein the configuration information identifies a storagerelationship among the one or more disk drives, at least one of thestorage sites for configuration information is a site distinct from theRAID controller; and at least one of the storage sites for configurationinformation is distinct from the one more disk drives.
 20. The method of19 wherein one or more sites of configuration information areidentified; the configuration information stored at the one or moresites are compared; the RAID system is configured if two or more sitescontain equivalent configuration information; and the user is promptedto input data in response to the configuration information if two ormore sites do not contain equivalent configuration information.
 21. Themethod of 19 wherein at least one of the one or more storage sites islocated on a backplane, the backplane is coupled to the RAID system. 22.The method of 19, wherein at least one of the one or more storage sitesis located on a system board, the RAID controller is located on anadapter card, and the adapter card is coupled to the system board. 23.The method of 19, wherein at least one of the one or more storage sitesis located on a first system board, the RAID controller is located on asecond system board, the first system board is coupled to the secondsystem board.
 24. The method of 19, wherein at least one of the one ormore storage sites is a non-volatile storage sites.
 25. The method of24, wherein the non-volatile memory storage site is non-volatile randomaccess memory (NVRAM), read only memory (ROM), CD-ROM, or a hard diskdrive.
 26. The method of 19, wherein at least one of the one or morestorage sites is the RAID controller.
 27. The method of 19, wherein atleast one of the storage sites is associated with the RAID controller.28. The method of 19, wherein at least one of the one or more storagesites is one or more of the RAID disk drives.
 29. A method for updatingconfiguration information associated with a RAID system, the RAID systemincluding a RAID controller, one or more disk drives associatedtherewith, and a storage site for configuration information, theconfiguration information identifying a data storage relationship amongthe one or more disk drives, wherein at least one of the storage sitesfor configuration information is a site distinct from the RAIDcontroller, wherein at least one of the storage sites for configurationinformation is distinct from the one or more disk drives, wherein aninput device is coupled to the RAID system, the method comprising:identifying the one or more storage sites of configuration information;comparing the configuration information stored in the one or morestorage sites; configuring the RAID system if two or more sites containequivalent configuration information; and two or more sites do notcontain equivalent configuration information; and prompting a user toinput data in response to the configuration information if two or moresites do not contain equivalent configuration information.